// 定义接口
// interface Person {
//   name: string
//   age: number
// }
// //对象使用接口
// let person: Person = {
//   name: '张三',
//   age: 78
// }
//重名接口，可以合并
// interface Student {
//   name: string
// }
// interface Student {
//   age: number
// }
// let student: Student = {
//   name: '周杰伦',
//   age: 23
// }
// console.log(student);
//继承
// interface People {
//   name: string
// }
// interface B extends People {
//   age: number
// }
// let obj: B = {
//   name: '张学友',
//   age: 67
// }
// console.log(obj);
//任意属性与可选属性
// 定义接口
interface Person {
  name: string
  readonly age: number
  //可选属性
  sex?: string
  //任意属性
  [propName: string]: any
  //添加函数
  cd(): void
}
//对象使用接口
let person: Person = {
  name: '张三',
  age: 78,
  sex: '男',
  ishot: true,
  cd: () => {
    console.log('你是全世界最帅的boy');

  }
}
person.name = 'nihaoa'
console.log(person);
person.cd()

